<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Module homomorphism</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Module_homomorphism"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/ext.math.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Module_homomorphism rootpage-Module_homomorphism skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Module homomorphism</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><p>In <a href="Abstract_algebra" title="Abstract algebra">algebra</a>, a <b>module homomorphism</b> is a <a href="Function_(mathematics)" title="Function (mathematics)">function</a> between <a href="Module_(mathematics)" title="Module (mathematics)">modules</a> that preserves the module structures. Explicitly, if <i>M</i> and <i>N</i> are left modules over a <a href="Ring_(mathematics)" title="Ring (mathematics)">ring</a> <i>R</i>, then a function <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f:M\to N}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
<mo>:</mo>
<mi>M</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>N</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f:M\to N}</annotation>
</semantics>
</math></span><img src="./1dbd50e2de9728ee14a7c232441137f588b109f6.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:11.336ex; height:2.509ex;" alt="{\displaystyle f:M\to N}" loading="lazy"></span> is called an <i>R</i>-<i>module homomorphism</i> or an <i>R</i>-<i>linear map</i> if for any <i>x</i>, <i>y</i> in <i>M</i> and <i>r</i> in <i>R</i>,
</p><dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f(x+y)=f(x)+f(y),}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo>+</mo>
<mi>y</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>+</mo>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>y</mi>
<mo stretchy="false">)</mo>
<mo>,</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f(x+y)=f(x)+f(y),}</annotation>
</semantics>
</math></span><img src="./9c79ddb353f35676b61efaff1867073fc0fbb058.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:23.66ex; height:2.843ex;" alt="{\displaystyle f(x+y)=f(x)+f(y),}" loading="lazy"></span></dd>
<dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f(rx)=rf(x).}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>r</mi>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>r</mi>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f(rx)=rf(x).}</annotation>
</semantics>
</math></span><img src="./9473faf76efd06001fd2cb9f768069a961d8dd79.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:14.678ex; height:2.843ex;" alt="{\displaystyle f(rx)=rf(x).}" loading="lazy"></span></dd></dl>
<p>In other words, <i>f</i> is a <a href="Group_homomorphism" title="Group homomorphism">group homomorphism</a> (for the underlying additive groups) that commutes with <a href="Scalar_multiplication" title="Scalar multiplication">scalar multiplication</a>. If <i>M</i>, <i>N</i> are right <i>R</i>-modules, then the second condition is replaced with
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f(xr)=f(x)r.}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mi>r</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mi>r</mi>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f(xr)=f(x)r.}</annotation>
</semantics>
</math></span><img src="./d30dc6caec914ed10c27d4659d2f0945ef2d7df3.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:14.678ex; height:2.843ex;" alt="{\displaystyle f(xr)=f(x)r.}" loading="lazy"></span></dd></dl>
<p>The <a href="Preimage" class="mw-redirect" title="Preimage">preimage</a> of the zero element under <i>f</i> is called the <a href="Kernel_(algebra)" title="Kernel (algebra)">kernel</a> of <i>f</i>. The <a href="Set_(mathematics)" title="Set (mathematics)">set</a> of all module homomorphisms from <i>M</i> to <i>N</i> is denoted by <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {Hom} _{R}(M,N)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>Hom</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>M</mi>
<mo>,</mo>
<mi>N</mi>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {Hom} _{R}(M,N)}</annotation>
</semantics>
</math></span><img src="./45796f476c5d2a7d1e413ab8349e274fe16c25d6.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:13.67ex; height:2.843ex;" alt="{\displaystyle \operatorname {Hom} _{R}(M,N)}" loading="lazy"></span>. It is an <a href="Abelian_group" title="Abelian group">abelian group</a> (under pointwise addition) but is not necessarily a module unless <i>R</i> is <a href="Commutative_ring" title="Commutative ring">commutative</a>.
</p><p>The <a href="Function_composition" title="Function composition">composition</a> of module homomorphisms is again a module homomorphism, and the identity map on a module is a module homomorphism. Thus, all the (say left) modules together with all the module homomorphisms between them form the <a href="Category_of_modules" title="Category of modules">category of modules</a>.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Terminology">Terminology</h2></div>
<p>A module homomorphism is called a <i>module isomorphism</i> if it admits an inverse homomorphism; in particular, it is a <a href="Bijection" title="Bijection">bijection</a>. Conversely, one can show a bijective module homomorphism is an isomorphism; i.e., the inverse is a module homomorphism. In particular, a module homomorphism is an isomorphism <a href="If_and_only_if" title="If and only if">if and only if</a> it is an isomorphism between the underlying abelian groups.
</p><p>The <a href="Isomorphism_theorem" class="mw-redirect" title="Isomorphism theorem">isomorphism theorems</a> hold for module homomorphisms.
</p><p>A module homomorphism from a module <i>M</i> to itself is called an <a href="Endomorphism" title="Endomorphism">endomorphism</a> and an isomorphism from <i>M</i> to itself an <a href="Automorphism" title="Automorphism">automorphism</a>. One writes <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {End} _{R}(M)=\operatorname {Hom} _{R}(M,M)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>End</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>M</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<msub>
<mi>Hom</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>M</mi>
<mo>,</mo>
<mi>M</mi>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {End} _{R}(M)=\operatorname {Hom} _{R}(M,M)}</annotation>
</semantics>
</math></span><img src="./9d0fd72374a9e8b302b1f71c11df92154446897f.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:27.046ex; height:2.843ex;" alt="{\displaystyle \operatorname {End} _{R}(M)=\operatorname {Hom} _{R}(M,M)}" loading="lazy"></span> for the set of all endomorphisms of a module <i>M</i>. It is not only an abelian group but is also a ring with multiplication given by function composition, called the <a href="Endomorphism_ring" title="Endomorphism ring">endomorphism ring</a> of <i>M</i>. The <a href="Group_of_units" class="mw-redirect" title="Group of units">group of units</a> of this ring is the <a href="Automorphism_group" title="Automorphism group">automorphism group</a> of <i>M</i>.
</p><p><a href="Schur's_lemma" title="Schur's lemma">Schur's lemma</a> says that a homomorphism between <a href="Simple_module" title="Simple module">simple modules</a> (modules with no non-trivial <a href="Submodule" class="mw-redirect" title="Submodule">submodules</a>) must be either zero or an isomorphism. In particular, the endomorphism ring of a simple module is a <a href="Division_ring" title="Division ring">division ring</a>.
</p><p>In the language of the <a href="Category_theory" title="Category theory">category theory</a>, an injective homomorphism is also called a <a href="Monomorphism" title="Monomorphism">monomorphism</a> and a surjective homomorphism an <a href="Epimorphism" title="Epimorphism">epimorphism</a>.
</p>
<div class="mw-heading mw-heading2"><h2 id="Examples">Examples</h2></div>
<ul><li>The <a href="Zero_map" class="mw-redirect" title="Zero map">zero map</a> <i>M</i> → <i>N</i> that maps every element to zero.</li>
<li>A <a href="Linear_transformation" class="mw-redirect" title="Linear transformation">linear transformation</a> between <a href="Vector_space" title="Vector space">vector spaces</a>.</li>
<li><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {Hom} _{\mathbb {Z} }(\mathbb {Z} /n,\mathbb {Z} /m)=\mathbb {Z} /\operatorname {gcd} (n,m)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>Hom</mi>
<mrow class="MJX-TeXAtom-ORD">
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">Z</mi>
</mrow>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">Z</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mo>/</mo>
</mrow>
<mi>n</mi>
<mo>,</mo>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">Z</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mo>/</mo>
</mrow>
<mi>m</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">Z</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mo>/</mo>
</mrow>
<mi>gcd</mi>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>n</mi>
<mo>,</mo>
<mi>m</mi>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {Hom} _{\mathbb {Z} }(\mathbb {Z} /n,\mathbb {Z} /m)=\mathbb {Z} /\operatorname {gcd} (n,m)}</annotation>
</semantics>
</math></span><img src="./c51e5bc6fd37ae0369ffa3a89f581f854e320a59.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:33.838ex; height:2.843ex;" alt="{\displaystyle \operatorname {Hom} _{\mathbb {Z} }(\mathbb {Z} /n,\mathbb {Z} /m)=\mathbb {Z} /\operatorname {gcd} (n,m)}" loading="lazy"></span>.</li>
<li>For a commutative ring <i>R</i> and <a href="Ideal_(ring_theory)" title="Ideal (ring theory)">ideals</a> <i>I</i>, <i>J</i>, there is the canonical identification
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {Hom} _{R}(R/I,R/J)=\{r\in R|rI\subset J\}/J}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>Hom</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>R</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>/</mo>
</mrow>
<mi>I</mi>
<mo>,</mo>
<mi>R</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>/</mo>
</mrow>
<mi>J</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mo fence="false" stretchy="false">{</mo>
<mi>r</mi>
<mo>∈<!-- ∈ --></mo>
<mi>R</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo stretchy="false">|</mo>
</mrow>
<mi>r</mi>
<mi>I</mi>
<mo>⊂<!-- ⊂ --></mo>
<mi>J</mi>
<mo fence="false" stretchy="false">}</mo>
<mrow class="MJX-TeXAtom-ORD">
<mo>/</mo>
</mrow>
<mi>J</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {Hom} _{R}(R/I,R/J)=\{r\in R|rI\subset J\}/J}</annotation>
</semantics>
</math></span><img src="./8ffc17e0cc91a4cf3e534957c6484546ac2aaa6f.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:38.808ex; height:2.843ex;" alt="{\displaystyle \operatorname {Hom} _{R}(R/I,R/J)=\{r\in R|rI\subset J\}/J}" loading="lazy"></span></dd></dl></li></ul>
<dl><dd>given by <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f\mapsto f(1)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
<mo stretchy="false">↦<!-- ↦ --></mo>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mn>1</mn>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f\mapsto f(1)}</annotation>
</semantics>
</math></span><img src="./270c99a7d599fa5d2320e8c5cb42e74e8c44444d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:9.143ex; height:2.843ex;" alt="{\displaystyle f\mapsto f(1)}" loading="lazy"></span>. In particular, <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {Hom} _{R}(R/I,R)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>Hom</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>R</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>/</mo>
</mrow>
<mi>I</mi>
<mo>,</mo>
<mi>R</mi>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {Hom} _{R}(R/I,R)}</annotation>
</semantics>
</math></span><img src="./cb5b106f4c67dc581acd5ac25bfa1b80b38e68d9.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:15.026ex; height:2.843ex;" alt="{\displaystyle \operatorname {Hom} _{R}(R/I,R)}" loading="lazy"></span> is the <a href="Annihilator_(ring_theory)" title="Annihilator (ring theory)">annihilator</a> of <i>I</i>.</dd></dl>
<ul><li>Given a ring <i>R</i> and an element <i>r</i>, let <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle l_{r}:R\to R}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>l</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>r</mi>
</mrow>
</msub>
<mo>:</mo>
<mi>R</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>R</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle l_{r}:R\to R}</annotation>
</semantics>
</math></span><img src="./2e2fd3e5da7855d87718eb072c6e64bf702518cb.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:10.746ex; height:2.509ex;" alt="{\displaystyle l_{r}:R\to R}" loading="lazy"></span> denote the left multiplication by <i>r</i>. Then for any <i>s</i>, <i>t</i> in <i>R</i>,
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle l_{r}(st)=rst=l_{r}(s)t}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>l</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>r</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>s</mi>
<mi>t</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>r</mi>
<mi>s</mi>
<mi>t</mi>
<mo>=</mo>
<msub>
<mi>l</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>r</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>s</mi>
<mo stretchy="false">)</mo>
<mi>t</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle l_{r}(st)=rst=l_{r}(s)t}</annotation>
</semantics>
</math></span><img src="./d583541802d289df2b78b47c2e1d65ba60f1cda3.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:19.988ex; height:2.843ex;" alt="{\displaystyle l_{r}(st)=rst=l_{r}(s)t}" loading="lazy"></span>.</dd></dl></li></ul>
<dl><dd>That is, <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle l_{r}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>l</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>r</mi>
</mrow>
</msub>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle l_{r}}</annotation>
</semantics>
</math></span><img src="./c75d116e3687cb1aa2dc1920191d501bb01742b5.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:1.667ex; height:2.509ex;" alt="{\displaystyle l_{r}}" loading="lazy"></span> is <i>right</i> <i>R</i>-linear.</dd></dl>
<ul><li>For any ring <i>R</i>,
<ul><li><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {End} _{R}(R)=R}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>End</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>R</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>R</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {End} _{R}(R)=R}</annotation>
</semantics>
</math></span><img src="./7ef9eb303743fdd3200070a0263730fe5e4468db.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:14.083ex; height:2.843ex;" alt="{\displaystyle \operatorname {End} _{R}(R)=R}" loading="lazy"></span> as rings when <i>R</i> is viewed as a right module over itself. Explicitly, this isomorphism is given by the <a href="Left_regular_representation" class="mw-redirect" title="Left regular representation">left regular representation</a> <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle R{\overset {\sim }{\to }}\operatorname {End} _{R}(R),\,r\mapsto l_{r}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>R</mi>
<mrow class="MJX-TeXAtom-ORD">
<mover>
<mo stretchy="false">→<!-- → --></mo>
<mo>∼<!-- ∼ --></mo>
</mover>
</mrow>
<msub>
<mi>End</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>R</mi>
<mo stretchy="false">)</mo>
<mo>,</mo>
<mspace width="thinmathspace"></mspace>
<mi>r</mi>
<mo stretchy="false">↦<!-- ↦ --></mo>
<msub>
<mi>l</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>r</mi>
</mrow>
</msub>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle R{\overset {\sim }{\to }}\operatorname {End} _{R}(R),\,r\mapsto l_{r}}</annotation>
</semantics>
</math></span><img src="./4d94f1b33545f66d28fe5e92a5a50b268fce4560.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:21.446ex; height:3.343ex;" alt="{\displaystyle R{\overset {\sim }{\to }}\operatorname {End} _{R}(R),\,r\mapsto l_{r}}" loading="lazy"></span>.</li>
<li>Similarly, <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {End} _{R}(R)=R^{op}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>End</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>R</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<msup>
<mi>R</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>o</mi>
<mi>p</mi>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {End} _{R}(R)=R^{op}}</annotation>
</semantics>
</math></span><img src="./d4b8b7d01dca78c98d7c42efb3b9f148b13f7746.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:15.94ex; height:2.843ex;" alt="{\displaystyle \operatorname {End} _{R}(R)=R^{op}}" loading="lazy"></span> as rings when <i>R</i> is viewed as a left module over itself. Textbooks or other references usually specify which convention is used.</li>
<li><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {Hom} _{R}(R,M)=M}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>Hom</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>R</mi>
<mo>,</mo>
<mi>M</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>M</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {Hom} _{R}(R,M)=M}</annotation>
</semantics>
</math></span><img src="./3d6bf55df3ab85af24161623802c6871fd4dbe80.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:18.911ex; height:2.843ex;" alt="{\displaystyle \operatorname {Hom} _{R}(R,M)=M}" loading="lazy"></span> through <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f\mapsto f(1)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
<mo stretchy="false">↦<!-- ↦ --></mo>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mn>1</mn>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f\mapsto f(1)}</annotation>
</semantics>
</math></span><img src="./270c99a7d599fa5d2320e8c5cb42e74e8c44444d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:9.143ex; height:2.843ex;" alt="{\displaystyle f\mapsto f(1)}" loading="lazy"></span> for any left module <i>M</i>.<sup id="cite_ref-bourbaki_1-0" class="reference"><a href="#cite_note-bourbaki-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> (The module structure on Hom here comes from the right <i>R</i>-action on <i>R</i>; see <a href="#Module_structures_on_Hom">#Module structures on Hom</a> below.)</li>
<li><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {Hom} _{R}(M,R)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>Hom</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>M</mi>
<mo>,</mo>
<mi>R</mi>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {Hom} _{R}(M,R)}</annotation>
</semantics>
</math></span><img src="./07b0a73fd5970d0b08a3d2b7a5d4fc2a58ac745f.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:13.37ex; height:2.843ex;" alt="{\displaystyle \operatorname {Hom} _{R}(M,R)}" loading="lazy"></span> is called the <a href="Dual_module" title="Dual module">dual module</a> of <i>M</i>; it is a left (resp. right) module if <i>M</i> is a right (resp. left) module over <i>R</i> with the module structure coming from the <i>R</i>-action on <i>R</i>. It is denoted by <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle M^{*}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msup>
<mi>M</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>∗<!-- ∗ --></mo>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle M^{*}}</annotation>
</semantics>
</math></span><img src="./b6d760e72a9f5f578f8ba166127f0713d56dc589.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:3.553ex; height:2.343ex;" alt="{\displaystyle M^{*}}" loading="lazy"></span>.</li></ul></li>
<li>Given a ring homomorphism <i>R</i> → <i>S</i> of commutative rings and an <i>S</i>-module <i>M</i>, an <i>R</i>-linear map θ: <i>S</i> → <i>M</i> is called a <a href="Derivation_(algebra)" class="mw-redirect" title="Derivation (algebra)">derivation</a> if for any <i>f</i>, <i>g</i> in <i>S</i>, <span class="nowrap">θ(<i>f g</i>) = <i>f</i> θ(<i>g</i>) + θ(<i>f</i>) <i>g</i></span>.</li>
<li>If <i>S</i>, <i>T</i> are unital <a href="Associative_algebra" title="Associative algebra">associative algebras</a> over a ring <i>R</i>, then an <a href="Algebra_homomorphism" class="mw-redirect" title="Algebra homomorphism">algebra homomorphism</a> from <i>S</i> to <i>T</i> is a <a href="Ring_homomorphism" title="Ring homomorphism">ring homomorphism</a> that is also an <i>R</i>-module homomorphism.</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Module_structures_on_Hom">Module structures on Hom</h2></div>
<p>In short, Hom inherits a ring action that was not <i>used up</i> to form Hom. More precise, let <i>M</i>, <i>N</i> be left <i>R</i>-modules. Suppose <i>M</i> has a right action of a ring <i>S</i> that commutes with the <i>R</i>-action; i.e., <i>M</i> is an (<i>R</i>, <i>S</i>)-module. Then
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {Hom} _{R}(M,N)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>Hom</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>M</mi>
<mo>,</mo>
<mi>N</mi>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {Hom} _{R}(M,N)}</annotation>
</semantics>
</math></span><img src="./45796f476c5d2a7d1e413ab8349e274fe16c25d6.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:13.67ex; height:2.843ex;" alt="{\displaystyle \operatorname {Hom} _{R}(M,N)}" loading="lazy"></span></dd></dl>
<p>has the structure of a left <i>S</i>-module defined by: for <i>s</i> in <i>S</i> and <i>x</i> in <i>M</i>,
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle (s\cdot f)(x)=f(xs).}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mo stretchy="false">(</mo>
<mi>s</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>f</mi>
<mo stretchy="false">)</mo>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mi>s</mi>
<mo stretchy="false">)</mo>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle (s\cdot f)(x)=f(xs).}</annotation>
</semantics>
</math></span><img src="./d408e069d74ac2e11861706f026aea9ff9389671.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:18.25ex; height:2.843ex;" alt="{\displaystyle (s\cdot f)(x)=f(xs).}" loading="lazy"></span></dd></dl>
<p>It is well-defined (i.e., <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle s\cdot f}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>s</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>f</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle s\cdot f}</annotation>
</semantics>
</math></span><img src="./71d0fabcbc372993fd0891f7c9e421f6f591c2ab.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:4.048ex; height:2.509ex;" alt="{\displaystyle s\cdot f}" loading="lazy"></span> is <i>R</i>-linear) since
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle (s\cdot f)(rx)=f(rxs)=rf(xs)=r(s\cdot f)(x),}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mo stretchy="false">(</mo>
<mi>s</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>f</mi>
<mo stretchy="false">)</mo>
<mo stretchy="false">(</mo>
<mi>r</mi>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>r</mi>
<mi>x</mi>
<mi>s</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>r</mi>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mi>s</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>r</mi>
<mo stretchy="false">(</mo>
<mi>s</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>f</mi>
<mo stretchy="false">)</mo>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>,</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle (s\cdot f)(rx)=f(rxs)=rf(xs)=r(s\cdot f)(x),}</annotation>
</semantics>
</math></span><img src="./51f383208380a5881892a668954092f53aa148c9.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:43.146ex; height:2.843ex;" alt="{\displaystyle (s\cdot f)(rx)=f(rxs)=rf(xs)=r(s\cdot f)(x),}" loading="lazy"></span></dd></dl>
<p>and <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle s\cdot f}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>s</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>f</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle s\cdot f}</annotation>
</semantics>
</math></span><img src="./71d0fabcbc372993fd0891f7c9e421f6f591c2ab.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:4.048ex; height:2.509ex;" alt="{\displaystyle s\cdot f}" loading="lazy"></span> is a ring action since
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle (st\cdot f)(x)=f(xst)=(t\cdot f)(xs)=s\cdot (t\cdot f)(x)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mo stretchy="false">(</mo>
<mi>s</mi>
<mi>t</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>f</mi>
<mo stretchy="false">)</mo>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mi>s</mi>
<mi>t</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mo stretchy="false">(</mo>
<mi>t</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>f</mi>
<mo stretchy="false">)</mo>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mi>s</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>s</mi>
<mo>⋅<!-- ⋅ --></mo>
<mo stretchy="false">(</mo>
<mi>t</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>f</mi>
<mo stretchy="false">)</mo>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle (st\cdot f)(x)=f(xst)=(t\cdot f)(xs)=s\cdot (t\cdot f)(x)}</annotation>
</semantics>
</math></span><img src="./76d74d69a82e2c367d3f94149694c780b80d6b89.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:46.83ex; height:2.843ex;" alt="{\displaystyle (st\cdot f)(x)=f(xst)=(t\cdot f)(xs)=s\cdot (t\cdot f)(x)}" loading="lazy"></span>.</dd></dl>
<p>Note: the above verification would "fail" if one used the left <i>R</i>-action in place of the right <i>S</i>-action. In this sense, Hom is often said to "use up" the <i>R</i>-action.
</p><p>Similarly, if <i>M</i> is a left <i>R</i>-module and <i>N</i> is an (<i>R</i>, <i>S</i>)-module, then <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {Hom} _{R}(M,N)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>Hom</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>M</mi>
<mo>,</mo>
<mi>N</mi>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {Hom} _{R}(M,N)}</annotation>
</semantics>
</math></span><img src="./45796f476c5d2a7d1e413ab8349e274fe16c25d6.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:13.67ex; height:2.843ex;" alt="{\displaystyle \operatorname {Hom} _{R}(M,N)}" loading="lazy"></span> is a right <i>S</i>-module by <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle (f\cdot s)(x)=f(x)s}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mo stretchy="false">(</mo>
<mi>f</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>s</mi>
<mo stretchy="false">)</mo>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mi>s</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle (f\cdot s)(x)=f(x)s}</annotation>
</semantics>
</math></span><img src="./949671129a462cbb7858fa2ca9e340d707b3f20a.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:17.603ex; height:2.843ex;" alt="{\displaystyle (f\cdot s)(x)=f(x)s}" loading="lazy"></span>.
</p>
<div class="mw-heading mw-heading2"><h2 id="A_matrix_representation">A matrix representation</h2></div>
<p>The relationship between matrices and linear transformations in <a href="Linear_algebra" title="Linear algebra">linear algebra</a> generalizes in a natural way to module homomorphisms between free modules. Precisely, given a right <i>R</i>-module <i>U</i>, there is the <a href="Canonical_isomorphism" class="mw-redirect" title="Canonical isomorphism">canonical isomorphism</a> of the abelian groups
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {Hom} _{R}(U^{\oplus n},U^{\oplus m}){\overset {f\mapsto [f_{ij}]}{\underset {\sim }{\to }}}M_{m,n}(\operatorname {End} _{R}(U))}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>Hom</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<msup>
<mi>U</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>⊕<!-- ⊕ --></mo>
<mi>n</mi>
</mrow>
</msup>
<mo>,</mo>
<msup>
<mi>U</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>⊕<!-- ⊕ --></mo>
<mi>m</mi>
</mrow>
</msup>
<mo stretchy="false">)</mo>
<mrow class="MJX-TeXAtom-ORD">
<mover>
<munder>
<mo stretchy="false">→<!-- → --></mo>
<mo>∼<!-- ∼ --></mo>
</munder>
<mrow>
<mi>f</mi>
<mo stretchy="false">↦<!-- ↦ --></mo>
<mo stretchy="false">[</mo>
<msub>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>i</mi>
<mi>j</mi>
</mrow>
</msub>
<mo stretchy="false">]</mo>
</mrow>
</mover>
</mrow>
<msub>
<mi>M</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>m</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<msub>
<mi>End</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>U</mi>
<mo stretchy="false">)</mo>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {Hom} _{R}(U^{\oplus n},U^{\oplus m}){\overset {f\mapsto [f_{ij}]}{\underset {\sim }{\to }}}M_{m,n}(\operatorname {End} _{R}(U))}</annotation>
</semantics>
</math></span><img src="./bb5bf64d8509dd8aa9edca8f6d1e115e15bdd81f.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.671ex; width:40.161ex; height:5.509ex;" alt="{\displaystyle \operatorname {Hom} _{R}(U^{\oplus n},U^{\oplus m}){\overset {f\mapsto [f_{ij}]}{\underset {\sim }{\to }}}M_{m,n}(\operatorname {End} _{R}(U))}" loading="lazy"></span></dd></dl>
<p>obtained by viewing <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle U^{\oplus n}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msup>
<mi>U</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>⊕<!-- ⊕ --></mo>
<mi>n</mi>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle U^{\oplus n}}</annotation>
</semantics>
</math></span><img src="./f42f95cd6833bf3cc8b626b58bccee54fe8b2dfd.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:4.338ex; height:2.509ex;" alt="{\displaystyle U^{\oplus n}}" loading="lazy"></span> consisting of column vectors and then writing <i>f</i> as an <i>m</i> × <i>n</i> matrix. In particular, viewing <i>R</i> as a right <i>R</i>-module and using <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {End} _{R}(R)\simeq R}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>End</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<mi>R</mi>
<mo stretchy="false">)</mo>
<mo>≃<!-- ≃ --></mo>
<mi>R</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {End} _{R}(R)\simeq R}</annotation>
</semantics>
</math></span><img src="./cf1e7edc7bfab9d20de0a8d22e7bcee84b8eb72e.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:14.083ex; height:2.843ex;" alt="{\displaystyle \operatorname {End} _{R}(R)\simeq R}" loading="lazy"></span>, one has
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {End} _{R}(R^{n})\simeq M_{n}(R)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>End</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>R</mi>
</mrow>
</msub>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<msup>
<mi>R</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
<mo stretchy="false">)</mo>
<mo>≃<!-- ≃ --></mo>
<msub>
<mi>M</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>R</mi>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {End} _{R}(R^{n})\simeq M_{n}(R)}</annotation>
</semantics>
</math></span><img src="./59e5cdb869144fac4a860545e1fd5e7273482a43.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:20.584ex; height:2.843ex;" alt="{\displaystyle \operatorname {End} _{R}(R^{n})\simeq M_{n}(R)}" loading="lazy"></span>,</dd></dl>
<p>which turns out to be a ring isomorphism (as a composition corresponds to a <a href="Matrix_multiplication" title="Matrix multiplication">matrix multiplication</a>).
</p><p>Note the above isomorphism is canonical; no choice is involved. On the other hand, if one is given a module homomorphism between finite-rank <a href="Free_module" title="Free module">free modules</a>, then a choice of an ordered basis corresponds to a choice of an isomorphism <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle F\simeq R^{n}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>F</mi>
<mo>≃<!-- ≃ --></mo>
<msup>
<mi>R</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle F\simeq R^{n}}</annotation>
</semantics>
</math></span><img src="./dea5dec2ac8b9c5cfb6dfdefe8c979b87742fe07.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:7.822ex; height:2.343ex;" alt="{\displaystyle F\simeq R^{n}}" loading="lazy"></span>. The above procedure then gives the matrix representation with respect to such choices of the bases. For more general modules, matrix representations may either lack uniqueness or not exist.
</p>
<div class="mw-heading mw-heading2"><h2 id="Defining">Defining</h2></div>
<p>In practice, one often defines a module homomorphism by specifying its values on a <a href="Generating_set_of_a_module" title="Generating set of a module">generating set</a>. More precisely, let <i>M</i> and <i>N</i> be left <i>R</i>-modules. Suppose a <a href="Subset" title="Subset">subset</a> <i>S</i> generates <i>M</i>; i.e., there is a surjection <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle F\to M}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>F</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>M</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle F\to M}</annotation>
</semantics>
</math></span><img src="./5d150b9a7c6982a1d7255dad4ccd8c9414b90287.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:7.797ex; height:2.176ex;" alt="{\displaystyle F\to M}" loading="lazy"></span> with a free module <i>F</i> with a basis indexed by <i>S</i> and kernel <i>K</i> (i.e., one has a <a href="Free_presentation" title="Free presentation">free presentation</a>). Then to give a module homomorphism <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle M\to N}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>M</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>N</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle M\to N}</annotation>
</semantics>
</math></span><img src="./e152d4a2247d912b3747f0a3d0277a78cd092759.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:8.12ex; height:2.176ex;" alt="{\displaystyle M\to N}" loading="lazy"></span> is to give a module homomorphism <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle F\to N}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>F</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>N</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle F\to N}</annotation>
</semantics>
</math></span><img src="./d144b4f031e31aa0d7f010ba41a3c20d2f5cd18c.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:7.418ex; height:2.176ex;" alt="{\displaystyle F\to N}" loading="lazy"></span> that kills <i>K</i> (i.e., maps <i>K</i> to zero).
</p>
<div class="mw-heading mw-heading2"><h2 id="Operations">Operations</h2></div>
<p>If <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f:M\to N}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
<mo>:</mo>
<mi>M</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>N</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f:M\to N}</annotation>
</semantics>
</math></span><img src="./1dbd50e2de9728ee14a7c232441137f588b109f6.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:11.336ex; height:2.509ex;" alt="{\displaystyle f:M\to N}" loading="lazy"></span> and <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle g:M'\to N'}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>g</mi>
<mo>:</mo>
<msup>
<mi>M</mi>
<mo>′</mo>
</msup>
<mo stretchy="false">→<!-- → --></mo>
<msup>
<mi>N</mi>
<mo>′</mo>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle g:M'\to N'}</annotation>
</semantics>
</math></span><img src="./3929a1376d31cf0dfa91cdb28cd9c473188b5579.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:12.658ex; height:2.843ex;" alt="{\displaystyle g:M'\to N'}" loading="lazy"></span> are module homomorphisms, then their direct sum is
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f\oplus g:M\oplus M'\to N\oplus N',\,(x,y)\mapsto (f(x),g(y))}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
<mo>⊕<!-- ⊕ --></mo>
<mi>g</mi>
<mo>:</mo>
<mi>M</mi>
<mo>⊕<!-- ⊕ --></mo>
<msup>
<mi>M</mi>
<mo>′</mo>
</msup>
<mo stretchy="false">→<!-- → --></mo>
<mi>N</mi>
<mo>⊕<!-- ⊕ --></mo>
<msup>
<mi>N</mi>
<mo>′</mo>
</msup>
<mo>,</mo>
<mspace width="thinmathspace"></mspace>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo>,</mo>
<mi>y</mi>
<mo stretchy="false">)</mo>
<mo stretchy="false">↦<!-- ↦ --></mo>
<mo stretchy="false">(</mo>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>,</mo>
<mi>g</mi>
<mo stretchy="false">(</mo>
<mi>y</mi>
<mo stretchy="false">)</mo>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f\oplus g:M\oplus M'\to N\oplus N',\,(x,y)\mapsto (f(x),g(y))}</annotation>
</semantics>
</math></span><img src="./847c62f5c59c0010b3c219501252e72b0065431a.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:48.669ex; height:3.009ex;" alt="{\displaystyle f\oplus g:M\oplus M'\to N\oplus N',\,(x,y)\mapsto (f(x),g(y))}" loading="lazy"></span></dd></dl>
<p>and their tensor product is
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f\otimes g:M\otimes M'\to N\otimes N',\,x\otimes y\mapsto f(x)\otimes g(y).}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
<mo>⊗<!-- ⊗ --></mo>
<mi>g</mi>
<mo>:</mo>
<mi>M</mi>
<mo>⊗<!-- ⊗ --></mo>
<msup>
<mi>M</mi>
<mo>′</mo>
</msup>
<mo stretchy="false">→<!-- → --></mo>
<mi>N</mi>
<mo>⊗<!-- ⊗ --></mo>
<msup>
<mi>N</mi>
<mo>′</mo>
</msup>
<mo>,</mo>
<mspace width="thinmathspace"></mspace>
<mi>x</mi>
<mo>⊗<!-- ⊗ --></mo>
<mi>y</mi>
<mo stretchy="false">↦<!-- ↦ --></mo>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>⊗<!-- ⊗ --></mo>
<mi>g</mi>
<mo stretchy="false">(</mo>
<mi>y</mi>
<mo stretchy="false">)</mo>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f\otimes g:M\otimes M'\to N\otimes N',\,x\otimes y\mapsto f(x)\otimes g(y).}</annotation>
</semantics>
</math></span><img src="./2ae68526abdf991dba36964e2fa0ba83a4126d1f.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:49.31ex; height:3.009ex;" alt="{\displaystyle f\otimes g:M\otimes M'\to N\otimes N',\,x\otimes y\mapsto f(x)\otimes g(y).}" loading="lazy"></span></dd></dl>
<p>Let <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f:M\to N}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
<mo>:</mo>
<mi>M</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>N</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f:M\to N}</annotation>
</semantics>
</math></span><img src="./1dbd50e2de9728ee14a7c232441137f588b109f6.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:11.336ex; height:2.509ex;" alt="{\displaystyle f:M\to N}" loading="lazy"></span> be a module homomorphism between left modules. The <a href="Graph_of_a_function" title="Graph of a function">graph</a> Γ<sub><i>f</i></sub> of <i>f</i> is the submodule of <i>M</i> ⊕ <i>N</i> given by
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \Gamma _{f}=\{(x,f(x))|x\in M\}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi mathvariant="normal">Γ<!-- Γ --></mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>f</mi>
</mrow>
</msub>
<mo>=</mo>
<mo fence="false" stretchy="false">{</mo>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo>,</mo>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo stretchy="false">)</mo>
<mrow class="MJX-TeXAtom-ORD">
<mo stretchy="false">|</mo>
</mrow>
<mi>x</mi>
<mo>∈<!-- ∈ --></mo>
<mi>M</mi>
<mo fence="false" stretchy="false">}</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \Gamma _{f}=\{(x,f(x))|x\in M\}}</annotation>
</semantics>
</math></span><img src="./6ea507011b5b08bd605a454a38324dd617c9cd51.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.005ex; width:23.862ex; height:3.009ex;" alt="{\displaystyle \Gamma _{f}=\{(x,f(x))|x\in M\}}" loading="lazy"></span>,</dd></dl>
<p>which is the image of the module homomorphism <span class="nowrap"><i>M</i> → <i>M</i> ⊕ <i>N</i>, <i>x</i> → (<i>x</i>, <i>f</i>(<i>x</i>)), called the <b>graph morphism</b>.</span>
</p><p>The <a href="Transpose" title="Transpose">transpose</a> of <i>f</i> is
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f^{*}:N^{*}\to M^{*},\,f^{*}(\alpha )=\alpha \circ f.}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msup>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>∗<!-- ∗ --></mo>
</mrow>
</msup>
<mo>:</mo>
<msup>
<mi>N</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>∗<!-- ∗ --></mo>
</mrow>
</msup>
<mo stretchy="false">→<!-- → --></mo>
<msup>
<mi>M</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>∗<!-- ∗ --></mo>
</mrow>
</msup>
<mo>,</mo>
<mspace width="thinmathspace"></mspace>
<msup>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>∗<!-- ∗ --></mo>
</mrow>
</msup>
<mo stretchy="false">(</mo>
<mi>α<!-- α --></mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>α<!-- α --></mi>
<mo>∘<!-- ∘ --></mo>
<mi>f</mi>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f^{*}:N^{*}\to M^{*},\,f^{*}(\alpha )=\alpha \circ f.}</annotation>
</semantics>
</math></span><img src="./d7954a8a8a3d0f0185c45171f36557e926e085e5.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:30.455ex; height:2.843ex;" alt="{\displaystyle f^{*}:N^{*}\to M^{*},\,f^{*}(\alpha )=\alpha \circ f.}" loading="lazy"></span></dd></dl>
<p>If <i>f</i> is an isomorphism, then the transpose of the inverse of <i>f</i> is called the <b>contragredient</b> of <i>f</i>.
</p>
<div class="mw-heading mw-heading2"><h2 id="Exact_sequences">Exact sequences</h2></div>
<p>Consider a sequence of module homomorphisms
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \cdots {\overset {f_{3}}{\longrightarrow }}M_{2}{\overset {f_{2}}{\longrightarrow }}M_{1}{\overset {f_{1}}{\longrightarrow }}M_{0}{\overset {f_{0}}{\longrightarrow }}M_{-1}{\overset {f_{-1}}{\longrightarrow }}\cdots .}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mo>⋯<!-- ⋯ --></mo>
<mrow class="MJX-TeXAtom-ORD">
<mover>
<mo stretchy="false">⟶<!-- ⟶ --></mo>
<msub>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>3</mn>
</mrow>
</msub>
</mover>
</mrow>
<msub>
<mi>M</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>2</mn>
</mrow>
</msub>
<mrow class="MJX-TeXAtom-ORD">
<mover>
<mo stretchy="false">⟶<!-- ⟶ --></mo>
<msub>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>2</mn>
</mrow>
</msub>
</mover>
</mrow>
<msub>
<mi>M</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>1</mn>
</mrow>
</msub>
<mrow class="MJX-TeXAtom-ORD">
<mover>
<mo stretchy="false">⟶<!-- ⟶ --></mo>
<msub>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>1</mn>
</mrow>
</msub>
</mover>
</mrow>
<msub>
<mi>M</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>0</mn>
</mrow>
</msub>
<mrow class="MJX-TeXAtom-ORD">
<mover>
<mo stretchy="false">⟶<!-- ⟶ --></mo>
<msub>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>0</mn>
</mrow>
</msub>
</mover>
</mrow>
<msub>
<mi>M</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>−<!-- − --></mo>
<mn>1</mn>
</mrow>
</msub>
<mrow class="MJX-TeXAtom-ORD">
<mover>
<mo stretchy="false">⟶<!-- ⟶ --></mo>
<msub>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>−<!-- − --></mo>
<mn>1</mn>
</mrow>
</msub>
</mover>
</mrow>
<mo>⋯<!-- ⋯ --></mo>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \cdots {\overset {f_{3}}{\longrightarrow }}M_{2}{\overset {f_{2}}{\longrightarrow }}M_{1}{\overset {f_{1}}{\longrightarrow }}M_{0}{\overset {f_{0}}{\longrightarrow }}M_{-1}{\overset {f_{-1}}{\longrightarrow }}\cdots .}</annotation>
</semantics>
</math></span><img src="./fe98b493848aa7b2388a3aebfae0a82582ecace8.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:40.794ex; height:4.343ex;" alt="{\displaystyle \cdots {\overset {f_{3}}{\longrightarrow }}M_{2}{\overset {f_{2}}{\longrightarrow }}M_{1}{\overset {f_{1}}{\longrightarrow }}M_{0}{\overset {f_{0}}{\longrightarrow }}M_{-1}{\overset {f_{-1}}{\longrightarrow }}\cdots .}" loading="lazy"></span></dd></dl>
<p>Such a sequence is called a <a href="Chain_complex" title="Chain complex">chain complex</a> (or often just complex) if each composition is zero; i.e., <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f_{i}\circ f_{i+1}=0}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>i</mi>
</mrow>
</msub>
<mo>∘<!-- ∘ --></mo>
<msub>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>=</mo>
<mn>0</mn>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f_{i}\circ f_{i+1}=0}</annotation>
</semantics>
</math></span><img src="./b9dd029fc7080ff2e755be9644efde177c393482.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:12.434ex; height:2.509ex;" alt="{\displaystyle f_{i}\circ f_{i+1}=0}" loading="lazy"></span> or equivalently the image of <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f_{i+1}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f_{i+1}}</annotation>
</semantics>
</math></span><img src="./0faffc55d5d5badb16fd3624efd13579d08bd7ad.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:4.039ex; height:2.509ex;" alt="{\displaystyle f_{i+1}}" loading="lazy"></span> is contained in the kernel of <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f_{i}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>i</mi>
</mrow>
</msub>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f_{i}}</annotation>
</semantics>
</math></span><img src="./65da883ca3d16b461e46c94777b0d9c4aa010e79.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:1.939ex; height:2.509ex;" alt="{\displaystyle f_{i}}" loading="lazy"></span>. (If the numbers increase instead of decrease, then it is called a cochain complex; e.g., <a href="De_Rham_complex" class="mw-redirect" title="De Rham complex">de Rham complex</a>.) A chain complex is called an <a href="Exact_sequence" title="Exact sequence">exact sequence</a> if <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \operatorname {im} (f_{i+1})=\operatorname {ker} (f_{i})}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>im</mi>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<msub>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>ker</mi>
<mo><!-- --></mo>
<mo stretchy="false">(</mo>
<msub>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>i</mi>
</mrow>
</msub>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \operatorname {im} (f_{i+1})=\operatorname {ker} (f_{i})}</annotation>
</semantics>
</math></span><img src="./b985bf0ac932b93e0ef7b1804ed2b6a3d97dc6bb.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:18.45ex; height:2.843ex;" alt="{\displaystyle \operatorname {im} (f_{i+1})=\operatorname {ker} (f_{i})}" loading="lazy"></span>. A special case of an exact sequence is a short exact sequence:
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 0\to A{\overset {f}{\to }}B{\overset {g}{\to }}C\to 0}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mn>0</mn>
<mo stretchy="false">→<!-- → --></mo>
<mi>A</mi>
<mrow class="MJX-TeXAtom-ORD">
<mover>
<mo stretchy="false">→<!-- → --></mo>
<mi>f</mi>
</mover>
</mrow>
<mi>B</mi>
<mrow class="MJX-TeXAtom-ORD">
<mover>
<mo stretchy="false">→<!-- → --></mo>
<mi>g</mi>
</mover>
</mrow>
<mi>C</mi>
<mo stretchy="false">→<!-- → --></mo>
<mn>0</mn>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle 0\to A{\overset {f}{\to }}B{\overset {g}{\to }}C\to 0}</annotation>
</semantics>
</math></span><img src="./b2d353849cad386c6d9f33e939734280c9ed1ea2.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:19.474ex; height:3.843ex;" alt="{\displaystyle 0\to A{\overset {f}{\to }}B{\overset {g}{\to }}C\to 0}" loading="lazy"></span></dd></dl>
<p>where <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f}</annotation>
</semantics>
</math></span><img src="./132e57acb643253e7810ee9702d9581f159a1c61.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:1.279ex; height:2.509ex;" alt="{\displaystyle f}" loading="lazy"></span> is injective, the kernel of <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle g}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>g</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle g}</annotation>
</semantics>
</math></span><img src="./d3556280e66fe2c0d0140df20935a6f057381d77.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:1.116ex; height:2.009ex;" alt="{\displaystyle g}" loading="lazy"></span> is the image of <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f}</annotation>
</semantics>
</math></span><img src="./132e57acb643253e7810ee9702d9581f159a1c61.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:1.279ex; height:2.509ex;" alt="{\displaystyle f}" loading="lazy"></span> and <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle g}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>g</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle g}</annotation>
</semantics>
</math></span><img src="./d3556280e66fe2c0d0140df20935a6f057381d77.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:1.116ex; height:2.009ex;" alt="{\displaystyle g}" loading="lazy"></span> is surjective.
</p><p>Any module homomorphism <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f:M\to N}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
<mo>:</mo>
<mi>M</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>N</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f:M\to N}</annotation>
</semantics>
</math></span><img src="./1dbd50e2de9728ee14a7c232441137f588b109f6.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:11.336ex; height:2.509ex;" alt="{\displaystyle f:M\to N}" loading="lazy"></span> defines an exact sequence
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 0\to K\to M{\overset {f}{\to }}N\to C\to 0,}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mn>0</mn>
<mo stretchy="false">→<!-- → --></mo>
<mi>K</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>M</mi>
<mrow class="MJX-TeXAtom-ORD">
<mover>
<mo stretchy="false">→<!-- → --></mo>
<mi>f</mi>
</mover>
</mrow>
<mi>N</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>C</mi>
<mo stretchy="false">→<!-- → --></mo>
<mn>0</mn>
<mo>,</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle 0\to K\to M{\overset {f}{\to }}N\to C\to 0,}</annotation>
</semantics>
</math></span><img src="./d1d3cb210a9d0e05eeabb95747d8786653c89fb1.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:28.09ex; height:4.176ex;" alt="{\displaystyle 0\to K\to M{\overset {f}{\to }}N\to C\to 0,}" loading="lazy"></span></dd></dl>
<p>where <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle K}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>K</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle K}</annotation>
</semantics>
</math></span><img src="./2b76fce82a62ed5461908f0dc8f037de4e3686b0.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:2.066ex; height:2.176ex;" alt="{\displaystyle K}" loading="lazy"></span> is the kernel of <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f}</annotation>
</semantics>
</math></span><img src="./132e57acb643253e7810ee9702d9581f159a1c61.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:1.279ex; height:2.509ex;" alt="{\displaystyle f}" loading="lazy"></span>, and <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle C}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>C</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle C}</annotation>
</semantics>
</math></span><img src="./4fc55753007cd3c18576f7933f6f089196732029.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.766ex; height:2.176ex;" alt="{\displaystyle C}" loading="lazy"></span> is the <a href="Cokernel" title="Cokernel">cokernel</a>, that is the quotient of <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle N}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>N</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle N}</annotation>
</semantics>
</math></span><img src="./f5e3890c981ae85503089652feb48b191b57aae3.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:2.064ex; height:2.176ex;" alt="{\displaystyle N}" loading="lazy"></span> by the image of <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f}</annotation>
</semantics>
</math></span><img src="./132e57acb643253e7810ee9702d9581f159a1c61.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:1.279ex; height:2.509ex;" alt="{\displaystyle f}" loading="lazy"></span>.
</p><p>In the case of modules over a <a href="Commutative_ring" title="Commutative ring">commutative ring</a>, a sequence is exact if and only if it is exact at all the <a href="Maximal_ideal" title="Maximal ideal">maximal ideals</a>; that is all sequences
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 0\to A_{\mathfrak {m}}{\overset {f}{\to }}B_{\mathfrak {m}}{\overset {g}{\to }}C_{\mathfrak {m}}\to 0}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mn>0</mn>
<mo stretchy="false">→<!-- → --></mo>
<msub>
<mi>A</mi>
<mrow class="MJX-TeXAtom-ORD">
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="fraktur">m</mi>
</mrow>
</mrow>
</msub>
<mrow class="MJX-TeXAtom-ORD">
<mover>
<mo stretchy="false">→<!-- → --></mo>
<mi>f</mi>
</mover>
</mrow>
<msub>
<mi>B</mi>
<mrow class="MJX-TeXAtom-ORD">
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="fraktur">m</mi>
</mrow>
</mrow>
</msub>
<mrow class="MJX-TeXAtom-ORD">
<mover>
<mo stretchy="false">→<!-- → --></mo>
<mi>g</mi>
</mover>
</mrow>
<msub>
<mi>C</mi>
<mrow class="MJX-TeXAtom-ORD">
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="fraktur">m</mi>
</mrow>
</mrow>
</msub>
<mo stretchy="false">→<!-- → --></mo>
<mn>0</mn>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle 0\to A_{\mathfrak {m}}{\overset {f}{\to }}B_{\mathfrak {m}}{\overset {g}{\to }}C_{\mathfrak {m}}\to 0}</annotation>
</semantics>
</math></span><img src="./9cb594be5d5eef611f902f699e1517d22e82a79d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:23.848ex; height:4.176ex;" alt="{\displaystyle 0\to A_{\mathfrak {m}}{\overset {f}{\to }}B_{\mathfrak {m}}{\overset {g}{\to }}C_{\mathfrak {m}}\to 0}" loading="lazy"></span></dd></dl>
<p>are exact, where the subscript <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle {\mathfrak {m}}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mrow class="MJX-TeXAtom-ORD">
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="fraktur">m</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle {\mathfrak {m}}}</annotation>
</semantics>
</math></span><img src="./adc0e9162e96758157a34a6e44967288b481a7cd.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.783ex; height:1.676ex;" alt="{\displaystyle {\mathfrak {m}}}" loading="lazy"></span> means the <a href="Localization_of_a_module" class="mw-redirect" title="Localization of a module">localization</a> at a maximal ideal <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle {\mathfrak {m}}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mrow class="MJX-TeXAtom-ORD">
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="fraktur">m</mi>
</mrow>
</mrow>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle {\mathfrak {m}}}</annotation>
</semantics>
</math></span><img src="./adc0e9162e96758157a34a6e44967288b481a7cd.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.783ex; height:1.676ex;" alt="{\displaystyle {\mathfrak {m}}}" loading="lazy"></span>.
</p><p>If <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f:M\to B,g:N\to B}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>f</mi>
<mo>:</mo>
<mi>M</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>B</mi>
<mo>,</mo>
<mi>g</mi>
<mo>:</mo>
<mi>N</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>B</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f:M\to B,g:N\to B}</annotation>
</semantics>
</math></span><img src="./099dab5dc4d40bfa0e8b2d556b213b9f5c11e69c.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:22.565ex; height:2.509ex;" alt="{\displaystyle f:M\to B,g:N\to B}" loading="lazy"></span> are module homomorphisms, then they are said to form a <b>fiber square</b> (or <b><a href="Pullback_square" class="mw-redirect" title="Pullback square">pullback square</a></b>), denoted by <i>M</i> ×<sub><i>B</i></sub> <i>N</i>, if it fits into
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 0\to M\times _{B}N\to M\times N{\overset {\phi }{\to }}B\to 0}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mn>0</mn>
<mo stretchy="false">→<!-- → --></mo>
<mi>M</mi>
<msub>
<mo>×<!-- × --></mo>
<mrow class="MJX-TeXAtom-ORD">
<mi>B</mi>
</mrow>
</msub>
<mi>N</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>M</mi>
<mo>×<!-- × --></mo>
<mi>N</mi>
<mrow class="MJX-TeXAtom-ORD">
<mover>
<mo stretchy="false">→<!-- → --></mo>
<mi>ϕ<!-- ϕ --></mi>
</mover>
</mrow>
<mi>B</mi>
<mo stretchy="false">→<!-- → --></mo>
<mn>0</mn>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle 0\to M\times _{B}N\to M\times N{\overset {\phi }{\to }}B\to 0}</annotation>
</semantics>
</math></span><img src="./d18589691544977553eb56927b2813787cca1c66.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:33.427ex; height:4.009ex;" alt="{\displaystyle 0\to M\times _{B}N\to M\times N{\overset {\phi }{\to }}B\to 0}" loading="lazy"></span></dd></dl>
<p>where <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \phi (x,y)=f(x)-g(x)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>ϕ<!-- ϕ --></mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo>,</mo>
<mi>y</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>f</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>−<!-- − --></mo>
<mi>g</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \phi (x,y)=f(x)-g(x)}</annotation>
</semantics>
</math></span><img src="./c390a4b16cfff3b3d76446cdcfd8397aa6f79d1c.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:21.325ex; height:2.843ex;" alt="{\displaystyle \phi (x,y)=f(x)-g(x)}" loading="lazy"></span>.
</p><p>Example: Let <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle B\subset A}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>B</mi>
<mo>⊂<!-- ⊂ --></mo>
<mi>A</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle B\subset A}</annotation>
</semantics>
</math></span><img src="./670e1f664373a6eb64b063d1856ddc49a527366e.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:6.606ex; height:2.176ex;" alt="{\displaystyle B\subset A}" loading="lazy"></span> be commutative rings, and let <i>I</i> be the <a href="Annihilator_(ring_theory)" title="Annihilator (ring theory)">annihilator</a> of the quotient <i>B</i>-module <i>A</i>/<i>B</i> (which is an ideal of <i>A</i>). Then canonical maps <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle A\to A/I,B/I\to A/I}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>A</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>A</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>/</mo>
</mrow>
<mi>I</mi>
<mo>,</mo>
<mi>B</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>/</mo>
</mrow>
<mi>I</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>A</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>/</mo>
</mrow>
<mi>I</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle A\to A/I,B/I\to A/I}</annotation>
</semantics>
</math></span><img src="./9305e21f9eccc2e2949ff395572b466a7f4feed0.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:22.258ex; height:2.843ex;" alt="{\displaystyle A\to A/I,B/I\to A/I}" loading="lazy"></span> form a fiber square with <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle B=A\times _{A/I}B/I.}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>B</mi>
<mo>=</mo>
<mi>A</mi>
<msub>
<mo>×<!-- × --></mo>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>/</mo>
</mrow>
<mi>I</mi>
</mrow>
</msub>
<mi>B</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>/</mo>
</mrow>
<mi>I</mi>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle B=A\times _{A/I}B/I.}</annotation>
</semantics>
</math></span><img src="./3301f723cea90f8233aeb7893ef465ee69993472.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.171ex; width:17.306ex; height:3.176ex;" alt="{\displaystyle B=A\times _{A/I}B/I.}" loading="lazy"></span>
</p>
<div class="mw-heading mw-heading2"><h2 id="Endomorphisms_of_finitely_generated_modules">Endomorphisms of finitely generated modules</h2></div>
<p>Let <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \phi :M\to M}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>ϕ<!-- ϕ --></mi>
<mo>:</mo>
<mi>M</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>M</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \phi :M\to M}</annotation>
</semantics>
</math></span><img src="./4e52cf487a2cf0b780ca716d14e8f1e673c24eba.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:11.821ex; height:2.509ex;" alt="{\displaystyle \phi :M\to M}" loading="lazy"></span> be an endomorphism between finitely generated <i>R</i>-modules for a commutative ring <i>R</i>. Then
</p>
<ul><li><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \phi }">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>ϕ<!-- ϕ --></mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \phi }</annotation>
</semantics>
</math></span><img src="./72b1f30316670aee6270a28334bdf4f5072cdde4.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:1.385ex; height:2.509ex;" alt="{\displaystyle \phi }" loading="lazy"></span> is killed by its characteristic polynomial relative to the generators of <i>M</i>; see <a href="Nakayama's_lemma#Proof" title="Nakayama's lemma">Nakayama's lemma#Proof</a>.</li>
<li>If <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \phi }">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>ϕ<!-- ϕ --></mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \phi }</annotation>
</semantics>
</math></span><img src="./72b1f30316670aee6270a28334bdf4f5072cdde4.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:1.385ex; height:2.509ex;" alt="{\displaystyle \phi }" loading="lazy"></span> is surjective, then it is injective.<sup id="cite_ref-matsumura_2-0" class="reference"><a href="#cite_note-matsumura-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup></li></ul>
<p>See also: <a href="Herbrand_quotient" title="Herbrand quotient">Herbrand quotient</a> (which can be defined for any endomorphism with some finiteness conditions.)
</p>
<div class="mw-heading mw-heading2"><h2 id="Variant:_additive_relations">Variant: additive relations</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1236090951">
/* start https://en.wikipedia.org/ */
.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}
/* end https://en.wikipedia.org/ */
</style><div role="note" class="hatnote navigation-not-searchable">See also: <a href="Binary_relation" title="Binary relation">binary relation</a></div>
<p>An <b>additive relation</b> <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle M\to N}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>M</mi>
<mo stretchy="false">→<!-- → --></mo>
<mi>N</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle M\to N}</annotation>
</semantics>
</math></span><img src="./e152d4a2247d912b3747f0a3d0277a78cd092759.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:8.12ex; height:2.176ex;" alt="{\displaystyle M\to N}" loading="lazy"></span> from a module <i>M</i> to a module <i>N</i> is a submodule of <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle M\oplus N.}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>M</mi>
<mo>⊕<!-- ⊕ --></mo>
<mi>N</mi>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle M\oplus N.}</annotation>
</semantics>
</math></span><img src="./a7f6110f74a1d29a4da745de68c7e08898257975.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.505ex; width:7.993ex; height:2.343ex;" alt="{\displaystyle M\oplus N.}" loading="lazy"></span><sup id="cite_ref-maclane_3-0" class="reference"><a href="#cite_note-maclane-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> In other words, it is a "<a href="Many-valued_function" class="mw-redirect" title="Many-valued function">many-valued</a>" homomorphism defined on some submodule of <i>M</i>. The inverse <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle f^{-1}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msup>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>−<!-- − --></mo>
<mn>1</mn>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle f^{-1}}</annotation>
</semantics>
</math></span><img src="./3e5cfa2f5c08d6fe7d046b73faa6e3f213acc802.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:3.653ex; height:3.009ex;" alt="{\displaystyle f^{-1}}" loading="lazy"></span> of <i>f</i> is the submodule <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \{(y,x)|(x,y)\in f\}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mo fence="false" stretchy="false">{</mo>
<mo stretchy="false">(</mo>
<mi>y</mi>
<mo>,</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mrow class="MJX-TeXAtom-ORD">
<mo stretchy="false">|</mo>
</mrow>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo>,</mo>
<mi>y</mi>
<mo stretchy="false">)</mo>
<mo>∈<!-- ∈ --></mo>
<mi>f</mi>
<mo fence="false" stretchy="false">}</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \{(y,x)|(x,y)\in f\}}</annotation>
</semantics>
</math></span><img src="./2e80f266fd70bade7a96c3a7c06a6b75c68e2853.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:17.748ex; height:2.843ex;" alt="{\displaystyle \{(y,x)|(x,y)\in f\}}" loading="lazy"></span>. Any additive relation <i>f</i> determines a homomorphism from a submodule of <i>M</i> to a quotient of <i>N</i>
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle D(f)\to N/\{y|(0,y)\in f\}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>D</mi>
<mo stretchy="false">(</mo>
<mi>f</mi>
<mo stretchy="false">)</mo>
<mo stretchy="false">→<!-- → --></mo>
<mi>N</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>/</mo>
</mrow>
<mo fence="false" stretchy="false">{</mo>
<mi>y</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo stretchy="false">|</mo>
</mrow>
<mo stretchy="false">(</mo>
<mn>0</mn>
<mo>,</mo>
<mi>y</mi>
<mo stretchy="false">)</mo>
<mo>∈<!-- ∈ --></mo>
<mi>f</mi>
<mo fence="false" stretchy="false">}</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle D(f)\to N/\{y|(0,y)\in f\}}</annotation>
</semantics>
</math></span><img src="./d9189537a58f4f6d2c641dfaf06dcf011ce0a5fe.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:25.26ex; height:2.843ex;" alt="{\displaystyle D(f)\to N/\{y|(0,y)\in f\}}" loading="lazy"></span></dd></dl>
<p>where <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle D(f)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>D</mi>
<mo stretchy="false">(</mo>
<mi>f</mi>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle D(f)}</annotation>
</semantics>
</math></span><img src="./9d5afbbd0e5cc5450dff4f0de2006936c4bc3acc.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:5.012ex; height:2.843ex;" alt="{\displaystyle D(f)}" loading="lazy"></span> consists of all elements <i>x</i> in <i>M</i> such that (<i>x</i>, <i>y</i>) belongs to <i>f</i> for some <i>y</i> in <i>N</i>.
</p><p>A <a href="Spectral_sequence#Edge_maps_and_transgressions" title="Spectral sequence">transgression</a> that arises from a spectral sequence is an example of an additive relation.
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Mapping_cone_(homological_algebra)" title="Mapping cone (homological algebra)">Mapping cone (homological algebra)</a></li>
<li><a href="Smith_normal_form" title="Smith normal form">Smith normal form</a></li>
<li><a href="Chain_complex" title="Chain complex">Chain complex</a></li>
<li><a href="Pairing" title="Pairing">Pairing</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="Notes">Notes</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */
.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}
/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap"><ol class="references">
<li id="cite_note-bourbaki-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-bourbaki_1-0">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */
.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}
/* end https://en.wikipedia.org/ */
</style><cite id="CITEREFBourbaki1998" class="citation cs2"><a href="Nicolas_Bourbaki" title="Nicolas Bourbaki">Bourbaki, Nicolas</a> (1998), "Chapter II, §1.14, remark 2", <i>Algebra I, Chapters 1–3</i>, Elements of Mathematics, Springer-Verlag, <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <bdi>3-540-64243-9</bdi>, <a href="MR_(identifier)" class="mw-redirect" title="MR (identifier)">MR</a> <a rel="nofollow" class="external text" href="https://mathscinet.ams.org/mathscinet-getitem?mr=1727844">1727844</a></cite></span>
</li>
<li id="cite_note-matsumura-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-matsumura_2-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFMatsumura1989" class="citation cs2">Matsumura, Hideyuki (1989), "Theorem 2.4", <i>Commutative Ring Theory</i>, Cambridge Studies in Advanced Mathematics, vol. 8 (2nd ed.), Cambridge University Press, <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <bdi>0-521-36764-6</bdi>, <a href="MR_(identifier)" class="mw-redirect" title="MR (identifier)">MR</a> <a rel="nofollow" class="external text" href="https://mathscinet.ams.org/mathscinet-getitem?mr=1011461">1011461</a></cite></span>
</li>
<li id="cite_note-maclane-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-maclane_3-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFMac_Lane1995" class="citation cs2"><a href="Saunders_Mac_Lane" title="Saunders Mac Lane">Mac Lane, Saunders</a> (1995), <i>Homology</i>, Classics in Mathematics, Springer-Verlag, p. <a rel="nofollow" class="external text" href="https://books.google.com/books?id=ujRqCQAAQBAJ&pg=PA52">52</a>, <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <bdi>3-540-58662-8</bdi>, <a href="MR_(identifier)" class="mw-redirect" title="MR (identifier)">MR</a> <a rel="nofollow" class="external text" href="https://mathscinet.ams.org/mathscinet-getitem?mr=1344215">1344215</a></cite></span>
</li>
</ol></div></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-03-05" href="https://en.wikipedia.org/wiki/?title=Module_homomorphism&oldid=1278983000">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
</body></html>